<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>PredicatedQueue (Apache Commons Collections 4.0 API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="PredicatedQueue (Apache Commons Collections 4.0 API)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/PredicatedQueue.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/commons/collections4/queue/CircularFifoQueue.html" title="class in org.apache.commons.collections4.queue"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/commons/collections4/queue/TransformedQueue.html" title="class in org.apache.commons.collections4.queue"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/collections4/queue/PredicatedQueue.html" target="_top">Frames</a></li>
<li><a href="PredicatedQueue.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields_inherited_from_class_org.apache.commons.collections4.collection.PredicatedCollection">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.commons.collections4.queue</div>
<h2 title="Class PredicatedQueue" class="title">Class PredicatedQueue&lt;E&gt;</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html" title="class in org.apache.commons.collections4.collection">org.apache.commons.collections4.collection.AbstractCollectionDecorator</a>&lt;E&gt;</li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/apache/commons/collections4/collection/PredicatedCollection.html" title="class in org.apache.commons.collections4.collection">org.apache.commons.collections4.collection.PredicatedCollection</a>&lt;E&gt;</li>
<li>
<ul class="inheritance">
<li>org.apache.commons.collections4.queue.PredicatedQueue&lt;E&gt;</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://download.oracle.com/javase/6/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;E&gt;, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;E&gt;, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;E&gt;</dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">PredicatedQueue&lt;E&gt;</span>
extends <a href="../../../../../org/apache/commons/collections4/collection/PredicatedCollection.html" title="class in org.apache.commons.collections4.collection">PredicatedCollection</a>&lt;E&gt;
implements <a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;E&gt;</pre>
<div class="block">Decorates another <a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util"><code>Queue</code></a> to validate that additions
 match a specified predicate.
 <p>
 This queue exists to provide validation for the decorated queue.
 It is normally created to decorate an empty queue.
 If an object cannot be added to the queue, an IllegalArgumentException is thrown.
 <p>
 One usage would be to ensure that no null entries are added to the queue.
 <pre>Queue queue = PredicatedQueue.predicatedQueue(new UnboundedFifoQueue(), NotNullPredicate.INSTANCE);</pre></div>
<dl><dt><span class="strong">Since:</span></dt>
  <dd>4.0</dd>
<dt><span class="strong">Version:</span></dt>
  <dd>$Id: PredicatedQueue.java 1477765 2013-04-30 18:37:37Z tn $</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../serialized-form.html#org.apache.commons.collections4.queue.PredicatedQueue">Serialized Form</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.apache.commons.collections4.collection.PredicatedCollection">
<!--   -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.commons.collections4.collection.<a href="../../../../../org/apache/commons/collections4/collection/PredicatedCollection.html" title="class in org.apache.commons.collections4.collection">PredicatedCollection</a></h3>
<code><a href="../../../../../org/apache/commons/collections4/collection/PredicatedCollection.html#predicate">predicate</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html#PredicatedQueue(java.util.Queue, org.apache.commons.collections4.Predicate)">PredicatedQueue</a></strong>(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;&nbsp;queue,
               <a href="../../../../../org/apache/commons/collections4/Predicate.html" title="interface in org.apache.commons.collections4">Predicate</a>&lt;? super <a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;&nbsp;predicate)</code>
<div class="block">Constructor that wraps (not copies).</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected <a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html#decorated()">decorated</a></strong>()</code>
<div class="block">Gets the queue being decorated.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html#element()">element</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html#offer(E)">offer</a></strong>(<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&nbsp;object)</code>
<div class="block">Override to validate the object being added to ensure it matches
 the predicate.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html#peek()">peek</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html#poll()">poll</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static &lt;E&gt;&nbsp;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="class in org.apache.commons.collections4.queue">PredicatedQueue</a>&lt;E&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html#predicatedQueue(java.util.Queue, org.apache.commons.collections4.Predicate)">predicatedQueue</a></strong>(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;E&gt;&nbsp;Queue,
               <a href="../../../../../org/apache/commons/collections4/Predicate.html" title="interface in org.apache.commons.collections4">Predicate</a>&lt;? super E&gt;&nbsp;predicate)</code>
<div class="block">Factory method to create a predicated (validating) queue.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html#remove()">remove</a></strong>()</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.commons.collections4.collection.PredicatedCollection">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.commons.collections4.collection.<a href="../../../../../org/apache/commons/collections4/collection/PredicatedCollection.html" title="class in org.apache.commons.collections4.collection">PredicatedCollection</a></h3>
<code><a href="../../../../../org/apache/commons/collections4/collection/PredicatedCollection.html#add(E)">add</a>, <a href="../../../../../org/apache/commons/collections4/collection/PredicatedCollection.html#addAll(java.util.Collection)">addAll</a>, <a href="../../../../../org/apache/commons/collections4/collection/PredicatedCollection.html#predicatedCollection(java.util.Collection, org.apache.commons.collections4.Predicate)">predicatedCollection</a>, <a href="../../../../../org/apache/commons/collections4/collection/PredicatedCollection.html#validate(E)">validate</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.commons.collections4.collection.AbstractCollectionDecorator">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.commons.collections4.collection.<a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html" title="class in org.apache.commons.collections4.collection">AbstractCollectionDecorator</a></h3>
<code><a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#clear()">clear</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#contains(java.lang.Object)">contains</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#containsAll(java.util.Collection)">containsAll</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#equals(java.lang.Object)">equals</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#hashCode()">hashCode</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#isEmpty()">isEmpty</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#iterator()">iterator</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#remove(java.lang.Object)">remove</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#removeAll(java.util.Collection)">removeAll</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#retainAll(java.util.Collection)">retainAll</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#setCollection(java.util.Collection)">setCollection</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#size()">size</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#toArray()">toArray</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#toArray(T[])">toArray</a>, <a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#toString()">toString</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.util.Queue">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;java.util.<a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a></h3>
<code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true#add(E)" title="class or interface in java.util">add</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.util.Collection">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;java.util.<a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a></h3>
<code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#addAll(java.util.Collection)" title="class or interface in java.util">addAll</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#clear()" title="class or interface in java.util">clear</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#contains(java.lang.Object)" title="class or interface in java.util">contains</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#containsAll(java.util.Collection)" title="class or interface in java.util">containsAll</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.util">equals</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#hashCode()" title="class or interface in java.util">hashCode</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#isEmpty()" title="class or interface in java.util">isEmpty</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#iterator()" title="class or interface in java.util">iterator</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#remove(java.lang.Object)" title="class or interface in java.util">remove</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#removeAll(java.util.Collection)" title="class or interface in java.util">removeAll</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#retainAll(java.util.Collection)" title="class or interface in java.util">retainAll</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#size()" title="class or interface in java.util">size</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#toArray()" title="class or interface in java.util">toArray</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/util/Collection.html?is-external=true#toArray(T[])" title="class or interface in java.util">toArray</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="PredicatedQueue(java.util.Queue, org.apache.commons.collections4.Predicate)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>PredicatedQueue</h4>
<pre>protected&nbsp;PredicatedQueue(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;&nbsp;queue,
               <a href="../../../../../org/apache/commons/collections4/Predicate.html" title="interface in org.apache.commons.collections4">Predicate</a>&lt;? super <a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;&nbsp;predicate)</pre>
<div class="block">Constructor that wraps (not copies).
 <p>
 If there are any elements already in the collection being decorated, they
 are validated.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>queue</code> - the queue to decorate, must not be null</dd><dd><code>predicate</code> - the predicate to use for validation, must not be null</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if Queue or predicate is null</dd>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the Queue contains invalid elements</dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="predicatedQueue(java.util.Queue, org.apache.commons.collections4.Predicate)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>predicatedQueue</h4>
<pre>public static&nbsp;&lt;E&gt;&nbsp;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="class in org.apache.commons.collections4.queue">PredicatedQueue</a>&lt;E&gt;&nbsp;predicatedQueue(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;E&gt;&nbsp;Queue,
                                     <a href="../../../../../org/apache/commons/collections4/Predicate.html" title="interface in org.apache.commons.collections4">Predicate</a>&lt;? super E&gt;&nbsp;predicate)</pre>
<div class="block">Factory method to create a predicated (validating) queue.
 <p>
 If there are any elements already in the queue being decorated, they
 are validated.</div>
<dl><dt><span class="strong">Type Parameters:</span></dt><dd><code>E</code> - the type of the elements in the queue</dd><dt><span class="strong">Parameters:</span></dt><dd><code>Queue</code> - the queue to decorate, must not be null</dd><dd><code>predicate</code> - the predicate to use for validation, must not be null</dd>
<dt><span class="strong">Returns:</span></dt><dd>a new predicated queue</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if queue or predicate is null</dd>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the queue contains invalid elements</dd></dl>
</li>
</ul>
<a name="decorated()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>decorated</h4>
<pre>protected&nbsp;<a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;&nbsp;decorated()</pre>
<div class="block">Gets the queue being decorated.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html#decorated()">decorated</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../org/apache/commons/collections4/collection/AbstractCollectionDecorator.html" title="class in org.apache.commons.collections4.collection">AbstractCollectionDecorator</a>&lt;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;</code></dd>
<dt><span class="strong">Returns:</span></dt><dd>the decorated queue</dd></dl>
</li>
</ul>
<a name="offer(java.lang.Object)">
<!--   -->
</a><a name="offer(E)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>offer</h4>
<pre>public&nbsp;boolean&nbsp;offer(<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&nbsp;object)</pre>
<div class="block">Override to validate the object being added to ensure it matches
 the predicate.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true#offer(E)" title="class or interface in java.util">offer</a></code>&nbsp;in interface&nbsp;<code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;</code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>object</code> - the object being added</dd>
<dt><span class="strong">Returns:</span></dt><dd>the result of adding to the underlying queue</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the add is invalid</dd></dl>
</li>
</ul>
<a name="poll()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>poll</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&nbsp;poll()</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true#poll()" title="class or interface in java.util">poll</a></code>&nbsp;in interface&nbsp;<code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;</code></dd>
</dl>
</li>
</ul>
<a name="peek()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>peek</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&nbsp;peek()</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true#peek()" title="class or interface in java.util">peek</a></code>&nbsp;in interface&nbsp;<code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;</code></dd>
</dl>
</li>
</ul>
<a name="element()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>element</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&nbsp;element()</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true#element()" title="class or interface in java.util">element</a></code>&nbsp;in interface&nbsp;<code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;</code></dd>
</dl>
</li>
</ul>
<a name="remove()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>remove</h4>
<pre>public&nbsp;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&nbsp;remove()</pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true#remove()" title="class or interface in java.util">remove</a></code>&nbsp;in interface&nbsp;<code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Queue.html?is-external=true" title="class or interface in java.util">Queue</a>&lt;<a href="../../../../../org/apache/commons/collections4/queue/PredicatedQueue.html" title="type parameter in PredicatedQueue">E</a>&gt;</code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/PredicatedQueue.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/commons/collections4/queue/CircularFifoQueue.html" title="class in org.apache.commons.collections4.queue"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../../../org/apache/commons/collections4/queue/TransformedQueue.html" title="class in org.apache.commons.collections4.queue"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/commons/collections4/queue/PredicatedQueue.html" target="_top">Frames</a></li>
<li><a href="PredicatedQueue.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields_inherited_from_class_org.apache.commons.collections4.collection.PredicatedCollection">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2001&#x2013;2013 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>
